/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.playground.core.entity;

import java.util.Date;
import java.util.Map;

/**
 *
 * @author Tiago Peres
 */
public class Invitation {
    private Date createdTime;
    private GameTitle gameTitle;
    // a map with all invited players and their respective answer to the invitation
    private Map<Player, Boolean> guests;
    // the player who's inviting, unique
    private final Player host;
    private InvitationStatus status;
    // time when the invitation status became "waitingForHost"
    private Date waitingForHostSince;
    
    public Invitation(Player host){
        this.host = host;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public GameTitle getGameTitle() {
        return gameTitle;
    }

    public void setGameTitle(GameTitle gameTitle) {
        this.gameTitle = gameTitle;
    }

    public Map<Player, Boolean> getGuests() {
        return guests;
    }

    public void setGuests(Map<Player, Boolean> guests) {
        this.guests = guests;
    }

    public Player getHost() {
        return host;
    }

    public InvitationStatus getStatus() {
        return status;
    }

    public void setStatus(InvitationStatus status) {
        this.status = status;
    }

    public Date getWaitingForHostSince() {
        return waitingForHostSince;
    }

    public void setWaitingForHostSince(Date waitingForHostSince) {
        this.waitingForHostSince = waitingForHostSince;
    }
}
